package com.southminority.ethnic.controller.heritage.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 非遗-研究成果关联展示对象
 * 
 * @author SouthMinority
 */
@Data
@Schema(description = "非遗项目关联的研究成果链接视图对象")
public class HeritageResearchLinkVO {

    @Schema(description = "主键ID", example = "1")
    private Long id;

    @Schema(description = "关联的非遗项目ID", example = "1")
    private Long heritageId;

    @Schema(description = "展示标题", example = "《苗族古歌的文化意象研究》")
    private String title;

    @Schema(description = "简介", example = "本文深入探讨了苗族古歌中常见的文化意象及其象征意义...")
    private String description;

    @Schema(description = "关联类型", example = "paper",
        allowableValues = {"link", "report", "paper", "project", "progress", "patent"})
    private String type;

    @Schema(description = "外部链接URL（当type为'link'时使用）", example = "http://example.com/research/paper123")
    private String url;

    @Schema(description = "关联的站内资源表名", example = "paper",
        allowableValues = {"paper", "report", "intellectual_property", "research_project", "research_progress"})
    private String sourceTable;

    @Schema(description = "关联的站内资源ID", example = "101")
    private Long sourceId;

    @Schema(description = "展示日期或年份", example = "2023-05")
    private String date;

    @Schema(description = "排序顺序，数字越小越靠前", example = "1")
    private Integer sortOrder;

    @Schema(description = "状态：1-正常 0-禁用 -1-删除", example = "1")
    private Integer status;
} 